package com.finalcial.service;


import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
/**
 * 我的待办以及已办页面
 * @author Lenovo
 *
 */
public interface WorkService {
	
	//我的待办（已办）页面
	public List<Map<String,Object>> listWorkMsg(Integer userId,String workStateName, Integer startPos,Integer pageSize);//（用户id，工作状态名）
	
	//点击搜索按钮---页面参数（报销类型名、用户名、起始金额、结束金额、起始时间、结束时间）
	/**
	 * 点击搜索按钮---页面参数（报销类型名、用户名、起始金额、结束金额、起始时间、结束时间）
	 * (报销类型名、票据名、用户名、起始金额、结束金额、起始时间、结束时间)
	 * @param userId 用户id
	 * @param workStateName 工作状态姓名
	 * @param reimbursementTypeName 报销类型名称
	 * @param userName 用户姓名
	 * @param moneyStart 开始金额
	 * @param moneyEnd 结束金额
	 * @param startTime 开始时间
	 * @param endTime 结束时间
	 * @return 【报销类型名 用户名】待办名称  报销来源 票据表中的金额 报销时间 session中的角色名(环节)
	 */
	public List<Map<String, Object>> getWorkMsg(Integer userId,String workStateName,String reimbursementTypeName,String userName,String moneyStart,String moneyEnd,String startTime,String endTime);//(报销类型名、票据名、用户名、起始金额、结束金额、起始时间、结束时间)
	//点击某一行待办信息--进入对应的类型界面--页面参数(报销类型名、报销id)
	public List<Map<String,Object>>  getEssentialInformation(String reimbursementId);//（报销id）【通用于四种报销类型的表数据】
	
	//获取详细信息
	public List<Map<String,Object>>  getDetailInformation(String reimbursementId, Integer userId);// 根据报销id得到明细（除差旅以外）
	
	//获取差旅明细
	public List<Map<String, Object>> getDetailInformationBytravel (String reimbursementId, Integer userId);//根据报销id得到差旅明细
	
	/**
	 * 查找已办（待办）界面数据总条数
	 * @param userId 
	 * @param workStateName
	 * @return
	 */
	public Integer listWorkMsgCounts(Integer userId,String workStateName);
	

}
